/*
*读一组整数到vector对象，计算并输出没对相邻元素的和。如果读入元素个数为奇数，则提示用户组后一个元素没有求和，并输出其值
*修改程序，头尾元素两两配对（第一个和最后一个，第二个和倒数第二个）计算每对元素的和，并输出。
*/
#include<iostream>
#include<vector>
using namespace std;

int main()
{
	vector<int> ivec;
	int iVal;

	while(cin >> iVal)
	{
		ivec.push_back(iVal);
	}
	
	//求相邻两个元素的和
	cout << "求相邻两个元素的和：" << endl;
	for(int i = 0;i != ivec.size()-1;i=i+2)
	{
		//如果"当前下标+1"大于ivec的大小，则退出循环
		if(( i + 1) >= ivec.size())
		{
			break;
		}
		cout << ivec[i] << "+" << ivec[i+1] << "=" << ivec[i] + ivec[i+1] << endl;
	}
	
	if(ivec.size() % 2 != 0)
	{
		cout << "vector中元素个数为基数，最后一个元素没有求和，最后一个元素为：" << ivec[(ivec.size()-1)] << endl;
	}

	//求头尾两个元素的和
	cout << "求头尾两个元素的和：" << endl;
	int iBegin,iEnd;
	for(iBegin = 0,iEnd = ivec.size()-1;iBegin < iEnd;iBegin++,iEnd--)
	{
		cout << ivec[iBegin] << "+" << ivec[iEnd] << "=" <<  ivec[iBegin] + ivec[iEnd] << endl;
	}
	
	if(iBegin == iEnd)
	{
		cout << "vector中元素个数为基数，中间元素没有求和，中间元素为：" << ivec[iBegin] << endl;
	}
	
	system("pause");
	return 0;
}
